﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using MINERP.MODEL.OverOrder;
using MINERP.MODEL.FoundationModel;
namespace MINERP.OverOrder.IView
{
    public interface IFrmOverOrder
    {
        /// <summary>
        /// 当前操作员
        /// </summary>
        int OperateUserId { get; set; }

        /// <summary>
        ///  当前选中的委外加工厂商的ID
        /// </summary>
        int SelectedOutShopId { get; set; }

        /// <summary>
        /// 当前选中的状态
        /// </summary>
        int SelectedOrderInfoStatus { get; set; }

        /// <summary>
        /// 需要取消的那些被选中的产品列表
        /// </summary>
        List<int> SelectedCancelProductList { get; }

        /// <summary>
        /// 当前选中的即将要进行操作的产品IDList
        /// </summary>
        List<int> SelectedOrderProductidList { get; /*set;*/ }

        //List<int> CancelOrderProductidList { get; set; }

        /// <summary>
        /// 显示主任务列表
        /// </summary>
        /// <param name="?"></param>
        void ShowMainView(List<OverOrderView> mainView);

        /// <summary>
        /// 显示某个厂商的任务列表
        /// </summary>
        /// <param name="shopTaskView"></param>
        void ShowShopTaskView(List<OverOrderView> shopTaskView);

        /// <summary>
        /// 显示委外加工厂商
        /// </summary>
        /// <param name="outShopView"></param>
        void ShowOutShopView(List<OutProcessShop_Info> outShopView);

        /// <summary>
        /// 收件备注
        /// </summary>
        string InFetchRemark { get; set; }

        /// <summary>
        /// 委外时的备注
        /// </summary>
        string InOutRemark { get; set; }

        /// <summary>
        /// 快递筛选定单包ID
        /// </summary>
        int FilterOrderBagId { set; get; }

        /// <summary>
        /// 快递筛选定商户ID
        /// </summary>
        string FilterShopName { get; set; }

        /// <summary>
        /// 快递筛选定客户名称
        /// </summary>
        string FilterCtmName { get; set; }

        /// <summary>
        /// 快递筛选定加急级别
        /// </summary>
        int FilterPriority { get; set; }

        /// <summary>
        /// 快递筛选定产品ID
        /// </summary>
        string FilterProductName { get; set; }

        /// <summary>
        /// 快递筛选定的起始委外时间
        /// </summary>
        DateTime FilterStartOutTime { get; set; }

        /// <summary>
        /// 快递筛选定的结束委外时间
        /// </summary>
        DateTime FilterEndOutTime { get; set; }

        /// <summary>
        /// 快递筛选定的起始预估取件时间
        /// </summary>
        DateTime FilterStartPreFetchTime { get; set; }

        /// <summary>
        /// 快递筛选定的结束预估取件时间
        /// </summary>
        DateTime FilterEndPriFetchTime { get; set; }

        /// <summary>
        /// 快递筛选定委外人Id
        /// </summary>
        string OutOperateUser { get; set; }

        /// <summary>
        /// 快递筛选定的委外商ID
        /// </summary>
        int OutShopId { get; set; }

        void FillQuickFilterCOMB(List<Tb_OrderBag_Info> listOrderBag, List<OrderInfo_Info> litOrderInfo, List<Tb_Product_Info> listProduct, List<OutProcessRecord_Info> listOutRecord, List<OutProcessShop_Info> listOutShop, List<string> listShopName);

        /// <summary>
        /// 当前结点ID
        /// </summary>
        int CurTechId { get; set; }
    }

}
